package com.hzncc.flowable_diboot.excel.model;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.HeadStyle;
import com.alibaba.excel.enums.poi.FillPatternTypeEnum;
import com.diboot.file.excel.BaseExcelModel;
import com.diboot.file.excel.annotation.ExcelBindDict;
import com.diboot.file.excel.annotation.ExcelOption;
import lombok.Getter;
import lombok.Setter;
import org.hibernate.validator.constraints.Length;

import jakarta.validation.constraints.NotNull;

/**
* 客户 导入model定义
*
* @author MyName
* @version 1.0
* @date 2024-06-21
 * Copyright © MyCorp
*/
@Getter
@Setter
@ExcelIgnoreUnannotated
@HeadStyle(fillPatternType = FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor = 1)
public class CustomerImportModel extends BaseExcelModel {
    /**
    * 名称
    */
    @NotNull(message = "名称不能为空")
    @HeadStyle(fillPatternType = FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor = 13)
    @Length(max=100, message="名称长度应小于100")
    @ExcelProperty(value = "名称")
    private String name;
    /**
    * SAP客户编号
    */
    @Length(max=100, message="SAP客户编号长度应小于100")
    @ExcelProperty(value = "SAP客户编号")
    private String sn;
    /**
    * 客户来源
    */
    @ExcelOption(dict = "customerSource")
    @ExcelBindDict(type = "customerSource")
    @ExcelProperty(value = "客户来源")
    private String source;
    /**
    * 客户级别
    */
    @ExcelOption(dict = "customer_rank")
    @ExcelBindDict(type = "customer_rank")
    @ExcelProperty(value = "客户级别")
    private String rank;
    /**
    * 客户行业
    */
    @ExcelOption(dict = "SAPCustomrBusiness")
    @ExcelBindDict(type = "SAPCustomrBusiness")
    @ExcelProperty(value = "客户行业")
    private String business;
    /**
    * 客户标签
    */
    @ExcelProperty(value = "客户标签")
    private String label;
    /**
    * 成交状态
    */
    @Length(max=100, message="成交状态长度应小于100")
    @ExcelProperty(value = "成交状态")
    private String status;
    /**
    * 详细地址
    */
    @Length(max=100, message="详细地址长度应小于100")
    @ExcelProperty(value = "详细地址")
    private String address;

}